[INFO] cloning repository https://github.com/dfb159/scythe_bot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dfb159/scythe_bot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdfb159%2Fscythe_bot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdfb159%2Fscythe_bot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f47684fab5e9c671d15f3d8dc812ad0aab7d83b
[INFO] fixing dfb159/scythe_bot against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdfb159%2Fscythe_bot" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dfb159/scythe_bot
[INFO] finished tweaking git repo https://github.com/dfb159/scythe_bot
[INFO] tweaked toml for git repo https://github.com/dfb159/scythe_bot written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dfb159/scythe_bot on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dfb159/scythe_bot already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unicode-ident v1.0.20
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.27
[INFO] [stderr]   Downloaded zerocopy v0.8.27
[INFO] [stderr]   Downloaded libc v0.2.177
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a
[INFO] running `Command { std: "docker" "start" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking scythe_bot v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected one of `=>`, `if`, or `|`, found `{`
[INFO] [stdout]  --> src/turn/execute.rs:8:59
[INFO] [stdout]   |
[INFO] [stdout] 8 |         TurnMask::PrimaryAndSecondary(primary, secondary) {
[INFO] [stdout]   |                                                           ^ expected one of `=>`, `if`, or `|`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::game_state`, `crate::game::turnhelper`, `crate::game::turnmask`
[INFO] [stdout]  --> src/turn/predict.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |         turnhelper::{check_secondary_cost, map_primary, turn},
[INFO] [stdout]   |         ^^^^^^^^^^ could not find `turnhelper` in `game`
[INFO] [stdout] 4 |         turnmask::{
[INFO] [stdout]   |         ^^^^^^^^ could not find `turnmask` in `game`
[INFO] [stdout] ...
[INFO] [stdout] 9 |     game_state::PlayerState,
[INFO] [stdout]   |     ^^^^^^^^^^ could not find `game_state` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `=>`, `if`, or `|`, found `{`
[INFO] [stdout]  --> src/turn/execute.rs:8:59
[INFO] [stdout]   |
[INFO] [stdout] 8 |         TurnMask::PrimaryAndSecondary(primary, secondary) {
[INFO] [stdout]   |                                                           ^ expected one of `=>`, `if`, or `|`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::game_state`, `crate::game::turnhelper`, `crate::game::turnmask`
[INFO] [stdout]  --> src/turn/predict.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |         turnhelper::{check_secondary_cost, map_primary, turn},
[INFO] [stdout]   |         ^^^^^^^^^^ could not find `turnhelper` in `game`
[INFO] [stdout] 4 |         turnmask::{
[INFO] [stdout]   |         ^^^^^^^^ could not find `turnmask` in `game`
[INFO] [stdout] ...
[INFO] [stdout] 9 |     game_state::PlayerState,
[INFO] [stdout]   |     ^^^^^^^^^^ could not find `game_state` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Playergame` in this scope
[INFO] [stdout]    --> src/turn/check.rs:405:36
[INFO] [stdout]     |
[INFO] [stdout] 405 | pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/game/player.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | pub struct PlayerState {
[INFO] [stdout]     | ---------------------- similarly named struct `PlayerState` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 405 - pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout] 405 + pub fn check_secondary_cost(game: &PlayerState, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:405:60
[INFO] [stdout]     |
[INFO] [stdout] 405 | pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         SecondaryAction::Upgrade => game.resources.oil,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         SecondaryAction::Deploy => game.resources.metal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         SecondaryAction::Build => game.resources.wood,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         SecondaryAction::Enlist => game.resources.food,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:17:36
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn execute_primary(mut state: &mut PlayerState, primary: &Primary) {
[INFO] [stdout]    |                                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::game::player::PlayerState;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:17:59
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn execute_primary(mut state: &mut PlayerState, primary: &Primary) {
[INFO] [stdout]    |                                                           ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Primary::Move(Move1(tiles1)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move1` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Primary::Move(Move1(tiles1)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Primary::Move(Move2(tiles1, tiles2)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move2` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Primary::Move(Move2(tiles1, tiles2)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move2;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Primary::Move(Move3(tiles1, tiles2, tiles3)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move3` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:27:23
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Primary::Move(Move3(tiles1, tiles2, tiles3)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move3;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Primary::Tax => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         Primary::Trade(res1, res2) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Primary::Promote => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         Primary::Bolster => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Primary::Enforce => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Primary::Produce(Produce1(tile1)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce1` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Primary::Produce(Produce1(tile1)) => {
[INFO] [stdout]    |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Produce::Produce1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         Primary::Produce(Produce2(tile1, tile2)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce2` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:95:26
[INFO] [stdout]    |
[INFO] [stdout] 95 |         Primary::Produce(Produce2(tile1, tile2)) => {
[INFO] [stdout]    |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Produce::Produce2;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Primary::Produce(Produce3(tile1, tile2, tile3)) => {
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce3` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:117:26
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Primary::Produce(Produce3(tile1, tile2, tile3)) => {
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Produce::Produce3;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:143:34
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_secondary(state: &mut PlayerState, secondary: &Secondary) {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:143:59
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_secondary(state: &mut PlayerState, secondary: &Secondary) {
[INFO] [stdout]     |                                                           ^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         Secondary::Upgrade(primary, secondary) if state.resources.oil >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:147:54
[INFO] [stdout]     |
[INFO] [stdout] 147 |             if state.recruits.is_secondary_recruited(Recruit::Power) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:152:62
[INFO] [stdout]     |
[INFO] [stdout] 152 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Upgrade);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Secondary::Deploy(Deploy(mech)) if state.resources.metal >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Deploy` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:154:27
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Secondary::Deploy(Deploy(mech)) if state.resources.metal >= cost => {
[INFO] [stdout]     |                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary::Deploy;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:155:54
[INFO] [stdout]     |
[INFO] [stdout] 155 |             if state.recruits.is_secondary_recruited(Recruit::Coin) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:160:62
[INFO] [stdout]     |
[INFO] [stdout] 160 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Deploy);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 |         Secondary::Build(building) if state.resources.wood >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:163:54
[INFO] [stdout]     |
[INFO] [stdout] 163 |             if state.recruits.is_secondary_recruited(Recruit::Popularity) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:168:62
[INFO] [stdout]     |
[INFO] [stdout] 168 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Build);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         Secondary::Enlist(secondary, onetime) if state.resources.food >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:171:54
[INFO] [stdout]     |
[INFO] [stdout] 171 |             if state.recruits.is_secondary_recruited(Recruit::Card) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:176:62
[INFO] [stdout]     |
[INFO] [stdout] 176 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Enlist);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:55
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                                                       ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:61
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                                                             ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:189:33
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn produce_resource(state: &mut PlayerState, tile: &Tile) {
[INFO] [stdout]     |                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:189:53
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn produce_resource(state: &mut PlayerState, tile: &Tile) {
[INFO] [stdout]     |                                                     ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         Tile::Village => {
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:194:23
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 .add(&Tile::Village, state.production.get(&Tile::Village));
[INFO] [stdout]     |                       ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:194:60
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 .add(&Tile::Village, state.production.get(&Tile::Village));
[INFO] [stdout]     |                                                            ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:205:30
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn map_primary(primary: &Primary) -> PrimaryAction {
[INFO] [stdout]     |                              ^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:205:42
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn map_primary(primary: &Primary) -> PrimaryAction {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:207:9
[INFO] [stdout]     |
[INFO] [stdout] 207 |         Primary::Move(_) => PrimaryAction::Move,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:207:29
[INFO] [stdout]     |
[INFO] [stdout] 207 |         Primary::Move(_) => PrimaryAction::Move,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         Primary::Tax => PrimaryAction::Tax,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:208:25
[INFO] [stdout]     |
[INFO] [stdout] 208 |         Primary::Tax => PrimaryAction::Tax,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         Primary::Trade(_, _) => PrimaryAction::Trade,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:209:33
[INFO] [stdout]     |
[INFO] [stdout] 209 |         Primary::Trade(_, _) => PrimaryAction::Trade,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Primary::Promote => PrimaryAction::Promote,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:210:29
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Primary::Promote => PrimaryAction::Promote,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Primary::Bolster => PrimaryAction::Bolster,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:211:29
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Primary::Bolster => PrimaryAction::Bolster,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Primary::Enforce => PrimaryAction::Enforce,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:212:29
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Primary::Enforce => PrimaryAction::Enforce,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 |         Primary::Produce(_) => PrimaryAction::Produce,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:213:32
[INFO] [stdout]     |
[INFO] [stdout] 213 |         Primary::Produce(_) => PrimaryAction::Produce,
[INFO] [stdout]     |                                ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:217:34
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn map_secondary(secondary: &Secondary) -> SecondaryAction {
[INFO] [stdout]     |                                  ^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:217:48
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn map_secondary(secondary: &Secondary) -> SecondaryAction {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:219:9
[INFO] [stdout]     |
[INFO] [stdout] 219 |         Secondary::Upgrade(_, _) => SecondaryAction::Upgrade,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:219:37
[INFO] [stdout]     |
[INFO] [stdout] 219 |         Secondary::Upgrade(_, _) => SecondaryAction::Upgrade,
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Deploy` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary::Deploy;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:41
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Secondary::Build(_) => SecondaryAction::Build,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:221:32
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Secondary::Build(_) => SecondaryAction::Build,
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Secondary::Enlist(_, _) => SecondaryAction::Enlist,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:222:36
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Secondary::Enlist(_, _) => SecondaryAction::Enlist,
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:226:33
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn map_tile_resource(tile: &Tile) -> Option<Resource> {
[INFO] [stdout]     |                                 ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn map_tile_resource(tile: &Tile) -> Option<Resource> {
[INFO] [stdout]     |                                                 ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         Tile::Woods => Some(Resource::Wood),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 |         Tile::Woods => Some(Resource::Wood),
[INFO] [stdout]     |                             ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         Tile::Mountain => Some(Resource::Metal),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:229:32
[INFO] [stdout]     |
[INFO] [stdout] 229 |         Tile::Mountain => Some(Resource::Metal),
[INFO] [stdout]     |                                ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         Tile::Tundra => Some(Resource::Oil),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:230:30
[INFO] [stdout]     |
[INFO] [stdout] 230 |         Tile::Tundra => Some(Resource::Oil),
[INFO] [stdout]     |                              ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |         Tile::Farm => Some(Resource::Food),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:231:28
[INFO] [stdout]     |
[INFO] [stdout] 231 |         Tile::Farm => Some(Resource::Food),
[INFO] [stdout]     |                            ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |         Tile::Village => None,
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `PrimaryUpgrade` is private
[INFO] [stdout]   --> src/turn/predict.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | use super::mask::{PrimaryUpgrade, Produce};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `PrimaryUpgrade` is defined here...
[INFO] [stdout]   --> src/turn/mask.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |         upgrades::{PrimaryUpgrade, SecondaryUpgrade},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the enum `PrimaryUpgrade` which is defined here
[INFO] [stdout]   --> src/game/upgrades.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum PrimaryUpgrade {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sub`
[INFO] [stdout]  --> src/game/board.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     ops::{Add, Sub},
[INFO] [stdout]   |                ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Playergame` in this scope
[INFO] [stdout]    --> src/turn/check.rs:405:36
[INFO] [stdout]     |
[INFO] [stdout] 405 | pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/game/player.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | pub struct PlayerState {
[INFO] [stdout]     | ---------------------- similarly named struct `PlayerState` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 405 - pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout] 405 + pub fn check_secondary_cost(game: &PlayerState, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:405:60
[INFO] [stdout]     |
[INFO] [stdout] 405 | pub fn check_secondary_cost(game: &Playergame, secondary: &SecondaryAction) -> bool {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::io;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         SecondaryAction::Upgrade => game.resources.oil,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         SecondaryAction::Deploy => game.resources.metal,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         SecondaryAction::Build => game.resources.wood,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/check.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         SecondaryAction::Enlist => game.resources.food,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:17:36
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn execute_primary(mut state: &mut PlayerState, primary: &Primary) {
[INFO] [stdout]    |                                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::game::player::PlayerState;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:17:59
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn execute_primary(mut state: &mut PlayerState, primary: &Primary) {
[INFO] [stdout]    |                                                           ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Primary::Move(Move1(tiles1)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move1` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Primary::Move(Move1(tiles1)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Primary::Move(Move2(tiles1, tiles2)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move2` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Primary::Move(Move2(tiles1, tiles2)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move2;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Primary::Move(Move3(tiles1, tiles2, tiles3)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Move3` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:27:23
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Primary::Move(Move3(tiles1, tiles2, tiles3)) => {
[INFO] [stdout]    |                       ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Move::Move3;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Primary::Tax => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         Primary::Trade(res1, res2) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Primary::Promote => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         Primary::Bolster => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Primary::Enforce => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Primary::Produce(Produce1(tile1)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce1` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Primary::Produce(Produce1(tile1)) => {
[INFO] [stdout]    |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Produce::Produce1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         Primary::Produce(Produce2(tile1, tile2)) => {
[INFO] [stdout]    |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Primary;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce2` in this scope
[INFO] [stdout]   --> src/turn/execute.rs:95:26
[INFO] [stdout]    |
[INFO] [stdout] 95 |         Primary::Produce(Produce2(tile1, tile2)) => {
[INFO] [stdout]    |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::turn::mask::Produce::Produce2;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Primary::Produce(Produce3(tile1, tile2, tile3)) => {
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Produce3` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:117:26
[INFO] [stdout]     |
[INFO] [stdout] 117 |         Primary::Produce(Produce3(tile1, tile2, tile3)) => {
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Produce::Produce3;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:143:34
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_secondary(state: &mut PlayerState, secondary: &Secondary) {
[INFO] [stdout]     |                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:143:59
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_secondary(state: &mut PlayerState, secondary: &Secondary) {
[INFO] [stdout]     |                                                           ^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         Secondary::Upgrade(primary, secondary) if state.resources.oil >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:147:54
[INFO] [stdout]     |
[INFO] [stdout] 147 |             if state.recruits.is_secondary_recruited(Recruit::Power) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:152:62
[INFO] [stdout]     |
[INFO] [stdout] 152 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Upgrade);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Secondary::Deploy(Deploy(mech)) if state.resources.metal >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Deploy` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:154:27
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Secondary::Deploy(Deploy(mech)) if state.resources.metal >= cost => {
[INFO] [stdout]     |                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary::Deploy;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:155:54
[INFO] [stdout]     |
[INFO] [stdout] 155 |             if state.recruits.is_secondary_recruited(Recruit::Coin) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:160:62
[INFO] [stdout]     |
[INFO] [stdout] 160 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Deploy);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 |         Secondary::Build(building) if state.resources.wood >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:163:54
[INFO] [stdout]     |
[INFO] [stdout] 163 |             if state.recruits.is_secondary_recruited(Recruit::Popularity) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:168:62
[INFO] [stdout]     |
[INFO] [stdout] 168 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Build);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         Secondary::Enlist(secondary, onetime) if state.resources.food >= cost => {
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Recruit` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:171:54
[INFO] [stdout]     |
[INFO] [stdout] 171 |             if state.recruits.is_secondary_recruited(Recruit::Card) {
[INFO] [stdout]     |                                                      ^^^^^^^ use of undeclared type `Recruit`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::recruits::Recruit;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryUpgrade` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:176:62
[INFO] [stdout]     |
[INFO] [stdout] 176 |             state.coins += state.upgrades.get_upgrade_coins(&SecondaryUpgrade::Enlist);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^ use of undeclared type `SecondaryUpgrade`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::upgrades::SecondaryUpgrade;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:55
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                                                       ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:182:61
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn move_people(state: &mut PlayerState, (from, to): &(Tile, Tile)) {
[INFO] [stdout]     |                                                             ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PlayerState` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:189:33
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn produce_resource(state: &mut PlayerState, tile: &Tile) {
[INFO] [stdout]     |                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::player::PlayerState;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:189:53
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn produce_resource(state: &mut PlayerState, tile: &Tile) {
[INFO] [stdout]     |                                                     ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         Tile::Village => {
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:194:23
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 .add(&Tile::Village, state.production.get(&Tile::Village));
[INFO] [stdout]     |                       ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:194:60
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 .add(&Tile::Village, state.production.get(&Tile::Village));
[INFO] [stdout]     |                                                            ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:205:30
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn map_primary(primary: &Primary) -> PrimaryAction {
[INFO] [stdout]     |                              ^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:205:42
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn map_primary(primary: &Primary) -> PrimaryAction {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:207:9
[INFO] [stdout]     |
[INFO] [stdout] 207 |         Primary::Move(_) => PrimaryAction::Move,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:207:29
[INFO] [stdout]     |
[INFO] [stdout] 207 |         Primary::Move(_) => PrimaryAction::Move,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         Primary::Tax => PrimaryAction::Tax,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:208:25
[INFO] [stdout]     |
[INFO] [stdout] 208 |         Primary::Tax => PrimaryAction::Tax,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         Primary::Trade(_, _) => PrimaryAction::Trade,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:209:33
[INFO] [stdout]     |
[INFO] [stdout] 209 |         Primary::Trade(_, _) => PrimaryAction::Trade,
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Primary::Promote => PrimaryAction::Promote,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:210:29
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Primary::Promote => PrimaryAction::Promote,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Primary::Bolster => PrimaryAction::Bolster,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:211:29
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Primary::Bolster => PrimaryAction::Bolster,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Primary::Enforce => PrimaryAction::Enforce,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:212:29
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Primary::Enforce => PrimaryAction::Enforce,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Primary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 |         Primary::Produce(_) => PrimaryAction::Produce,
[INFO] [stdout]     |         ^^^^^^^ use of undeclared type `Primary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Primary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PrimaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:213:32
[INFO] [stdout]     |
[INFO] [stdout] 213 |         Primary::Produce(_) => PrimaryAction::Produce,
[INFO] [stdout]     |                                ^^^^^^^^^^^^^ use of undeclared type `PrimaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::PrimaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:217:34
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn map_secondary(secondary: &Secondary) -> SecondaryAction {
[INFO] [stdout]     |                                  ^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:217:48
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn map_secondary(secondary: &Secondary) -> SecondaryAction {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:219:9
[INFO] [stdout]     |
[INFO] [stdout] 219 |         Secondary::Upgrade(_, _) => SecondaryAction::Upgrade,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:219:37
[INFO] [stdout]     |
[INFO] [stdout] 219 |         Secondary::Upgrade(_, _) => SecondaryAction::Upgrade,
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `Deploy` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |                           ^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this tuple variant
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary::Deploy;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:220:41
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Secondary::Deploy(Deploy(_)) => SecondaryAction::Deploy,
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Secondary::Build(_) => SecondaryAction::Build,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:221:32
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Secondary::Build(_) => SecondaryAction::Build,
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Secondary` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Secondary::Enlist(_, _) => SecondaryAction::Enlist,
[INFO] [stdout]     |         ^^^^^^^^^ use of undeclared type `Secondary`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::turn::mask::Secondary;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `SecondaryAction` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:222:36
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Secondary::Enlist(_, _) => SecondaryAction::Enlist,
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ use of undeclared type `SecondaryAction`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::template::SecondaryAction;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:226:33
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn map_tile_resource(tile: &Tile) -> Option<Resource> {
[INFO] [stdout]     |                                 ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:226:49
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub fn map_tile_resource(tile: &Tile) -> Option<Resource> {
[INFO] [stdout]     |                                                 ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         Tile::Woods => Some(Resource::Wood),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 |         Tile::Woods => Some(Resource::Wood),
[INFO] [stdout]     |                             ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         Tile::Mountain => Some(Resource::Metal),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:229:32
[INFO] [stdout]     |
[INFO] [stdout] 229 |         Tile::Mountain => Some(Resource::Metal),
[INFO] [stdout]     |                                ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         Tile::Tundra => Some(Resource::Oil),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:230:30
[INFO] [stdout]     |
[INFO] [stdout] 230 |         Tile::Tundra => Some(Resource::Oil),
[INFO] [stdout]     |                              ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |         Tile::Farm => Some(Resource::Food),
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Resource` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:231:28
[INFO] [stdout]     |
[INFO] [stdout] 231 |         Tile::Farm => Some(Resource::Food),
[INFO] [stdout]     |                            ^^^^^^^^ use of undeclared type `Resource`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Resource;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tile` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |         Tile::Village => None,
[INFO] [stdout]     |         ^^^^ use of undeclared type `Tile`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::game::Tile;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `PrimaryUpgrade` is private
[INFO] [stdout]   --> src/turn/predict.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | use super::mask::{PrimaryUpgrade, Produce};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `PrimaryUpgrade` is defined here...
[INFO] [stdout]   --> src/turn/mask.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |         upgrades::{PrimaryUpgrade, SecondaryUpgrade},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the enum `PrimaryUpgrade` which is defined here
[INFO] [stdout]   --> src/game/upgrades.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum PrimaryUpgrade {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sub`
[INFO] [stdout]  --> src/game/board.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     ops::{Add, Sub},
[INFO] [stdout]   |                ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::io;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `check_move_from` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 183 |     if check_move_from(state, from) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `check_move_from` in this scope
[INFO] [stdout]    --> src/turn/execute.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 183 |     if check_move_from(state, from) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/turn/check.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     from: &Rc<Field>,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/turn/check.rs:253:5
[INFO] [stdout]     |
[INFO] [stdout] 253 |     to: &Rc<Field>,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/turn/check.rs:300:5
[INFO] [stdout]     |
[INFO] [stdout] 300 |     from: &Rc<Field>,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/turn/check.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 |     to: &Rc<Field>,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game`
[INFO] [stdout]    --> src/turn/check.rs:323:19
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn check_movement(game: &Game, movement: &UnitMovement) -> Reason {
[INFO] [stdout]     |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `movement`
[INFO] [stdout]    --> src/turn/check.rs:323:32
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn check_movement(game: &Game, movement: &UnitMovement) -> Reason {
[INFO] [stdout]     |                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_movement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/turn/check.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     from: &Rc<Field>,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/turn/check.rs:253:5
[INFO] [stdout]     |
[INFO] [stdout] 253 |     to: &Rc<Field>,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/turn/check.rs:300:5
[INFO] [stdout]     |
[INFO] [stdout] 300 |     from: &Rc<Field>,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/turn/check.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 |     to: &Rc<Field>,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game`
[INFO] [stdout]    --> src/turn/check.rs:323:19
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn check_movement(game: &Game, movement: &UnitMovement) -> Reason {
[INFO] [stdout]     |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `movement`
[INFO] [stdout]    --> src/turn/check.rs:323:32
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn check_movement(game: &Game, movement: &UnitMovement) -> Reason {
[INFO] [stdout]     |                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_movement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut game = Game::new(&NORMAL, [&player1, &player2, &player3]);
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut game = Game::new(&NORMAL, [&player1, &player2, &player3]);
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432, E0433, E0531, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432, E0433, E0531, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `scythe_bot` (bin "scythe_bot" test) due to 90 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `scythe_bot` (bin "scythe_bot") due to 90 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a", kill_on_drop: false }`
[INFO] [stdout] 9724fc22bdeffef0ac43a5cae285adec1ccfea30083c1324074bb994c9a5843a
